/*
 * Bomb.h
 *
 *  Created on: 2010-05-27
 *      Author: mateusz
 */

#ifndef BOMB_H_
#define BOMB_H_

#include "Map.h"
#include "Element.h"

#include <ctime>

/**
 * Klasa reprezentujaca bombe w grze.
 */

class Bomb : public Element {
public:
	Bomb() : Element(0,0) {};

	/**
	 * @param x wspolrzedna x w pikselach
	 * @param y wspolrzedna y w pikselach
	 * @param time czas podlozenia
	 * @param mine okresla czy bomba nalezy do gracza, czy do przeciwnikow
	 */
	Bomb( int x, int y, time_t time, bool mine );
	virtual ~Bomb();

	/**
	 * Wysadza bombe
	 * @param map mapa na ktorej bomba zostanie wysadzona
	 */
	void blow( Map* map );

	/**
	 * Zwraca czas podłożenia
	 */
	time_t getSetTime() {
		return setTime;
	}

	/**
	 * Czy bomba jest gracza czy przeciwnika
	 */
	bool isMine() { return mine; }

	void draw(CL_GraphicContext &gc) {};
private:
	int range;
	time_t setTime;
	bool mine;
};

#endif /* BOMB_H_ */
